ACTOR TrueEnragedLegendaryImp 
{
  Health 2200
  Radius 20
  Height 56
  Mass 100
  Speed 20
  PainChance 50
  Monster
  MeleeDamage 15
  DamageFactor "Legendary1", 0.0
  DamageFactor 0.45
  DamageFactor "PlasmaBall", 20
  DamageFactor "Legendary", 0.0
  DamageFactor "PDTBFG", 0.25
  DamageFactor "PDTBFGTracer", 0.25
  DamageFactor "PlayerDevBall", 0.125
  DamageFactor "PlayerDevBall2", 0.125
  DamageFactor "PlayerDTBFGRailgunSlug", 0.75
  DamageFactor "PlayerDevTracer", 0.125
  DropItem "LegendarySphere" 50 40
  DropItem "EnragedLegendaryRune" 20 1
  DropItem "ILDemonAmmoBox" 200
  DropItem "ILDemonAmmo" 250
  DropItem "BossLifeEssence" 256
  DropItem "BossArmorBonusMax" 256
  DropItem "BossLifeEssence" 256
  DropItem "BossArmorBonusMax" 256
  DropItem "Enraged Legendary Rifle" 256 25
  Species "Imps"
  +Float
  +NOTARGET
  +BOSS
  +BOSSDEATH
  +AVOIDMELEE
  +NOTIMEFREEZE
  +NoGravity
  +FLOORCLIP
  +MISSILEMORE
  +QUICKTORETALIATE
  +MISSILEEVENMORE
  +DONTHARMSPECIES
  +NOICEDEATH
  +DONTGIB
  SeeSound "BREATH_1"
  PainSound "legimp/pain"
  DeathSound "legimp/death"
  ActiveSound "legimp/active"
  HitObituary "%o was dismembered by a Enraged Legendary Imp"
  BloodColor "Red"
  MeleeSound "imp/melee"
  Obituary "%o Pissed off the Enraged Legendary imp"
  var int user_music;
  States
  {
  Spawn:
    TNT1 A 0 A_SpawnItem("RHellionSmokeSpawner",0,0,0,0)
    IEGN A 10 Bright A_Look
	TNT1 A 0 A_SpawnItem("RHellionSmokeSpawner",0,0,0,0)
	IEGN Q 10 Bright A_Look
    TNT1 A 0 A_SpawnItem("RHellionSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
    IEGN A 10 Bright A_Look
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	IEGN Q 10 Bright A_Look
    TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	Loop
  See: 
    TNT1 A 0 ACS_ExecuteAlways(5432,0,51)
    TNT1 A 0 A_SetUserVar("user_music",1)
    TNT1 A 0 A_SpawnItem("RHellionSmokeSpawner",0,0,0,0)
    IEGN AA 3 Bright A_Chase
	TNT1 A 0 A_SpawnItem("RHellionSmokeSpawner",0,0,0,0)
	IEGN BB 3 Bright A_Chase
	TNT1 A 0 A_SpawnItem("RHellionSmokeSpawner",0,0,0,0)
	IEGN CC 3 Bright A_Chase
	TNT1 A 0 A_SpawnItem("RHellionSmokeSpawner",0,0,0,0)
	IEGN DD 3 Bright A_Chase
	TNT1 A 0 ACS_ExecuteAlways(5432,0,51)
	TNT1 A 0 A_SpawnItem("RHellionSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Jump(30,"Teleport")
	TNT1 A 0 A_Jump(62,"Rush")
	TNT1 A 0 A_Jump(50,"AirDodge")
	Loop
  AirDodge:
	 IEGN A 0 A_Jump(255,"Right","Left","Back","BackLeftRange","BackRightRange")
	 GoTo See
	Right:
	 IEGN A 0
	 IEGN A 0 ThrustThing(angle*256/360+64,30,0,0)
	 IEGN A 5 Bright
	 GoTo See
	Left:
	 IEGN A 0
	 IEGN A 0 ThrustThing(angle*256/360+192,30,0,0)
	 IEGN A 5 Bright
	 GoTo See
	Back:
	 IEGN A 0
	 IEGN A 0 ThrustThing(angle*256/360+128,30,0,0)
	 IEGN A 5 Bright
	 GoTo See
	BackLeftRange:
	 IEGN A 0
	 IEGN A 0 ThrustThing(angle*256/360+random(133,187),30,0,0)
	 IEGN A 5 Bright
	 GoTo See
	BackRightRange:
	 IEGN A 0
	 IEGN A 0 ThrustThing(angle*256/360+random(69,123),30,0,0)
	 IEGN A 5 Bright 
	 GoTo See
  Melee:
    IEGN EF 6 Bright A_FaceTarget
    IEGN F 5 Bright A_MeleeAttack
	Goto See
  Missile:
    TNT1 A 0 A_Jump(32,"Super")
    TNT1 A 0 A_Jump(64,"Seeker")
  Normal:
	TNT1 A 1 Bright A_PlaySound("imp/attack")
	IEGM F 1 Bright A_FaceTarget
	IEGM F 1 Bright A_CustomMissile("ILegendaryBall", 28, 0, 0)
	IEGM F 1 Bright A_FaceTarget
	IEGM F 1 Bright A_CustomMissile("ILegendaryBall", 28, 0, 0)
    IEGM F 2 Bright A_FaceTarget
	IEGM F 2 Bright A_CustomMissile("ILegendaryBall", 28, 0, 0)
    IEGM F 2 Bright A_FaceTarget
	IEGM F 2 Bright A_CustomMissile("ILegendaryBall", 28, 0, 0)
	IEGM F 2 Bright A_FaceTarget
	IEGM F 2 Bright A_CustomMissile("ILegendaryBall", 28, 0, 0)
	IEGM F 3 Bright A_FaceTarget
	IEGM F 3 Bright A_CustomMissile("ILegendaryBall", 28, 0, 0)
	IEGM F 3 Bright A_FaceTarget
	IEGM F 3 Bright A_CustomMissile("ILegendaryBall", 28, 0, 0)
	IEGM F 3 Bright A_FaceTarget
	IEGM F 3 Bright A_CustomMissile("ILegendaryBall", 28, 0, 0)
	IEGM F 3 Bright A_FaceTarget
	IEGM F 3 Bright A_CustomMissile("ILegendaryBall", 28, 0, 0)
	IEGM F 3 Bright A_FaceTarget
	IEGM F 3 Bright A_CustomMissile("ILegendaryBall", 28, 0, 0)
	TNT1 A 0 A_Jump(88,"Seeker")
	Goto See
  Seeker:
	IEGN EF 10 Bright A_FaceTarget
	TNT1 A 0 Bright A_PlaySound("imp/attack")
	IEGM F 6 Bright A_CustomMissile("ILegImpSeekBall",32,20,0)
    IEGM F 2 Bright A_FaceTarget
	TNT1 A 0 Bright A_PlaySound("imp/attack")
	IEGM F 6 Bright A_CustomMissile("ILegImpSeekBall",32,20,0)
    IEGM F 2 Bright A_FaceTarget
	TNT1 A 0 Bright A_PlaySound("imp/attack")
	IEGM F 6 Bright A_CustomMissile("ILegImpSeekBall",32,20,0)
	IEGM F 2 Bright A_FaceTarget
	TNT1 A 0 Bright A_PlaySound("imp/attack")
	IEGM F 6 Bright A_CustomMissile("ILegImpSeekBall",32,20,0)
    IEGM F 2 Bright A_FaceTarget
	TNT1 A 0 Bright A_PlaySound("imp/attack")
	IEGM F 6 Bright A_CustomMissile("ILegImpSeekBall",32,20,0)
    IEGM F 2 Bright A_FaceTarget
	TNT1 A 0 Bright A_PlaySound("imp/attack")
	IEGM F 6 Bright A_CustomMissile("ILegImpSeekBall",32,20,0)
	Goto See
  Super:
	TNT1 A 0 A_JumpIfCloser(200,"Normal")
	TNT1 A 0 Bright A_PlaySound ("legimp/chargingsound")
	TNT1 A 0 A_SetInvulnerable
	IEGN E 0 Bright A_FaceTarget
	IEGN EEEEE 2 Bright A_SpawnItem("ILegImpLineSpawner",0,0,0,0)
	IEGN E 0 Bright A_FaceTarget
	IEGN EEEEE 2 Bright A_SpawnItem("ILegImpLineSpawner",0,0,0,0)
	IEGN E 0 Bright A_FaceTarget
	IEGN EEEEE 2 Bright A_SpawnItem("ILegImpLineSpawner",0,0,0,0)
	IEGN E 0 Bright A_FaceTarget
	IEGN EEEEE 2 Bright A_SpawnItem("ILegImpLineSpawner",0,0,0,0)
	IEGN E 0 Bright A_FaceTarget
	IEGN EEEEE 2 Bright A_SpawnItem("ILegImpLineSpawner",0,0,0,0)
	IEGN F 0 Bright A_FaceTarget
	IEGN FFFFF 2 Bright A_SpawnItem("ILegImpLineSpawner",0,0,0,0)
	IEGN F 0 Bright A_FaceTarget
	IEGN FFFFF 2 Bright A_SpawnItem("ILegImpLineSpawner",0,0,0,0)
	IEGN F 0 Bright A_FaceTarget
	IEGN FFFFF 2 Bright A_SpawnItem("ILegImpLineSpawner",0,0,0,0)
	IEGN F 0 Bright A_FaceTarget
	IEGN FFFFF 2 Bright A_SpawnItem("ILegImpLineSpawner",0,0,0,0)
	IEGN F 0 Bright A_FaceTarget
	IEGN FFFFF 2 Bright A_SpawnItem("ILegImpLineSpawner",0,0,0,0)
    TNT1 A 0 A_SpawnItem("RHellionSmokeSpawner",0,0,0,0)
	IEGM F 1 Bright A_CustomMissile ("LegendaryImpRedBall",28,0,0)
	IEGM F 1 Bright A_CustomMissile ("LegendaryImpRedBall",28,0,0)
	IEGM F 2 Bright A_CustomMissile ("LegendaryImpRedBall",28,0,0)
	IEGM F 2 Bright A_CustomMissile ("LegendaryImpRedBall",28,0,0)
	IEGM F 3 Bright A_CustomMissile ("LegendaryImpRedBall",28,0,0)
	IEGM F 3 Bright A_CustomMissile ("LegendaryImpRedBall",28,0,0)
	TNT1 A 0 Bright A_playSound ("legimp/fiyabetch")
	TNT1 A 0 A_UnsetInvulnerable
	TNT1 A 0 A_SpawnItem("RHellionSmokeSpawner",0,0,0,0)
	Goto see		
  Rush:
	TNT1 A 0 A_SpawnItemEx("ILegendaryImpGhost")	
	IEGN A 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("ILegendaryImpGhost")	
	IEGN A 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("ILegendaryImpGhost")	
	IEGN A 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("ILegendaryImpGhost")	
	IEGN A 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("ILegendaryImpGhost")	
	IEGN A 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("ILegendaryImpGhost")	
	IEGN A 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("ILegendaryImpGhost")	
	IEGN A 1 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("ILegendaryImpGhost")	
	IEGN A 1 Bright A_Chase
	TNT1 A 0 A_Jump(84,"See")
	Loop
  Teleport:
    IEGN A 1 Bright A_UnSetShootable
	IEGN AAAA 0 A_SpawnItem("RHellionSmokeSpawner",0,0,0,0)
	IEGN AAAAAAAAAA 1  A_FadeOut(0.1,0)
	IEGN A 2 
	IEGN AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	IEGN AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
    IEGN A 1 A_PlayWeaponSound("boss/teleport")
	IEGN AAAA 0 A_SpawnItem("RHellionSmokeSpawner",0,0,0,0)
	IEGN AAAAAAAAAA 1 A_FadeIn(0.1)
    IEGN A 1 Bright A_SetShootable
    Goto See		
  Pain:
    TNT1 A 0 A_Jump(50,"Teleport")
    IEGN H 2 Bright
    TNT1 A 0 A_SpawnItem("RHellionSmokeSpawner",0,0,0,0)
	IEGN H 2 Bright A_Pain
    TNT1 A 0 A_SpawnItem("RHellionSmokeSpawner",0,0,0,0)
	Goto See
  Death:
    TNT1 A 0 A_StopSound(6)
	IEGN I 8
    IEGN J 8 A_Scream
    IEGN K 6
    IEGN L 6 A_NoBlocking
    IEGN M 1
    IEGN N -1
	Stop
  }
}

Actor TrueEnragedLegImpThunder 
{
+NOGRAVITY
+ExtremeDeath
+NOCLIP
+FORCERADIUSDMG
+NOTIMEFREEZE
Renderstyle Add
Height 32
Radius 16
Alpha 0.2
Scale 4.0
DamageType "Cyber10k"
States
{
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_PlaySoundEx("thunder/hit","Voice",0,2)    
	TNT1 A 0 A_Explode(400,684)
	TNT1 A 0 Radius_Quake(175,8,512,1024,0)
	TNT1 AAA 0 A_CustomMissile("SmokeFX3",0,0,random(0,360),2,random(0,360))
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("LegCardiThunderSpark",0,0,0,random(1,10),0,random(1,10),random(0,359),129)
	LTHN AAAA 2 Bright A_FadeIn(0.2)
	LTHN AAAA 8 Bright A_FadeOut(0.2)
	Stop
    }     
}
